package org.jeecg.modules.xxgx.fpgl.service;

import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.innerApi.common.requestDto.InvoiceParam;
import org.jeecg.modules.innerApi.common.responseDto.InvoiceRtn;
import org.jeecg.modules.xxgx.fpgl.dto.FpzfDto;
import org.jeecg.modules.xxgx.fpgl.param.BacthInvoiceParam;
import org.jeecg.modules.xxgx.fpgl.vo.FphcPLPage;
import org.jeecg.modules.xxgx.fpgl.vo.FphcPLRtn;
import org.jeecg.modules.xxgx.fpgl.vo.YkfpzfRtn;

import java.util.List;

/**
 * @Description: 销项发票开具管理
 * @Author: jeecg-boot
 * @Date:   2023-07-30
 * @Version: V1.0
 */
public interface IFpkjglService {

	/***
	 * 批量开票
	 * @params 单据信息报文
	 */
	Result batchInvoice(BacthInvoiceParam params);

	/***
	 * 发票开具
	 * @params 开票报文
	 */
	Result<InvoiceRtn.InvoiceRtnData> invoice(InvoiceParam params);

	/***
	 * 已开发票作废
	 * @params 作废信息
	 */
	Result<List<YkfpzfRtn>> ykfpzf(List<String> ids);

	YkfpzfRtn ykfpzf(FpzfDto dto);

	/**
	 * 批量红冲
	 * @param fphcPage
	 * @return
	 */
	Result<List<FphcPLRtn>> plhc(FphcPLPage fphcPage);
}
